package org.x.user.service;


import com.mybatisflex.core.paginate.Page;
import org.springframework.scheduling.annotation.Async;
import org.x.user.dto.LogArchiveDTO;
import org.x.user.dto.LogQueryDTO;
import org.x.user.entity.SysLogEntity;
import com.mybatisflex.core.service.IService;

import java.io.Serializable;

/**
 * 操作日志表 服务层。
 *
 * @author mybatis-flex-helper automatic generation
 * @since 1.0
 */
public interface ISysLogService extends IService<SysLogEntity> {
    // 异步保存日志
    void asyncSaveLog(SysLogEntity sysLogEntity);
    // 分页查询
    Object page(LogQueryDTO logQueryDTO);

    // 根据ID查询日志详情
    Object getByIddetail(Long id);
    // 日志归档
    Object archiveLog(LogArchiveDTO archiveDTO);

    // 日志统计报表
    Object statistics(String timeRange, String startTime, String endTime);

    void download(String startTime, String endTime);
}